Copyright(C) 1994 Terumasa KODAKA , Takeshi KONO
■GP-IB BIOS
o GP-IB BIOS(INT D1h)のベクタアドレスは、システム起動時には設定されて
いない。GP-IB BIOSを使用する前に、あらかじめINT D1hのベクタアドレスを
設定しておく必要がある。
GP-IB BIOSのROMのセグメントがD400hのとき、D540:0000hからベクタ
アドレスに関する情報が格納されている。
----------+------------+------------------------------
アドレス |値 |意味
----------+------------+------------------------------
D540:0000h|01h |エントリ数
D540:0001h|00h |未使用
D540:0002h|00h |未使用
D540:0003h|00h |未使用
D540:0004h|D1h |ベクタ番号
D540:0005h|00h |未使用
D540:0006h|OFFSET(WORD)|GP-IB BIOSエントリオフセット
| |(GP-IB BIOSのエントリアドレスの
| |セグメント値はD540h)
----------+------------+------------------------------
o GP-IB BIOSのROMアドレスは変更できる(デフォルトD4000h)。
o GP-IB BIOSのベクタ番号はINT D1hである必要はないが、N88-BASIC
インタプリタではINT D1hをGP-IB BIOSのベクタ番号として使用している。
表 リターンコード一覧
---+-------------------------------------------------------------------
AH |意味
---+-------------------------------------------------------------------
00h|処理正常終了
|RECEIVE DATA時のデリミタ受信(EOIなし)による終了
|EXECUTE SERIAL POLL時のRQSビット1のSTB受信による終了(EOI受信なし)
01h|RECEIVE DATA時のデリミタ+EOI受信時による終了
|EXECUTE SERIAL POLL時のRQSビット1かつEOI受信ありのSTB受信による終了
02h|RECEIVE DATA時のEOI受信(デリミタなし)による終了
80h|条件付正常終了
|RECEIVE DATA時の受信データ格納域不足(デリミタ未受信)
|EXECUTE SERIAL POLL時のRQSビット1のSTB受信なし
F8h|IFC受信による強制終了(スレーブ時)
FCh|エラー検出(GP-IB規定違反検出)
FEh|時間監視による強制終了(タイムアウト)
FFh|不正呼び出し
---+-------------------------------------------------------------------
INT D1h - Function 00h
分類 GP-IB BIOS
名前 GP-IB BIOSの初期化[INITIALIZE]
対象 PC-9801-29(K・N)
入力 AH=00h
ES=制御情報通知域のセグメントアドレス
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連 0000:05C2h
INT C5h
F800:7FDCh
INT D1h - Function 01h
分類 GP-IB BIOS
名前 IFCの設定[SET IFC]
対象 PC-9801-29(K・N)
入力 AH=01h
BH=IFCラインをアクティブにする時間(100μs単位)
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 02h
分類 GP-IB BIOS
名前 RENの設定[SET REN]
対象 PC-9801-29(K・N)
入力 AH=02h
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 03h
分類 GP-IB BIOS
名前 RENのリセット[RESET REN]
対象 PC-9801-29(K・N)
入力 AH=03h
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 04h
分類 GP-IB BIOS
名前 データの送信[SEND DATA]
対象 PC-9801-29(K・N)
入力 AH=04h
ES:SI=コマンド格納域の先頭アドレス
BX=コマンド格納域の長さ
ES:DI=データ格納域の先頭アドレス
CX=データ格納域の長さ
AL=デリミタの指定
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 05h
分類 GP-IB BIOS
名前 データの受信[RECEVIVE DATA]
対象 PC-9801-29(K・N)
入力 AH=05h
ES:SI=コマンド格納域の先頭アドレス
BX=コマンド格納域の長さ
ES:DI=データ格納域の先頭アドレス
CX=データ格納域の長さ
AL=デリミタの指定
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 06h
分類 GP-IB BIOS
名前 シリアルポールの実行[EXECUTE SERIAL POLL]
対象 PC-9801-29(K・N)
入力 AH=06h
ES:DI=トーカ情報リストの先頭アドレス
CX=トーカ情報リストのエントリ数
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 07h
分類 GP-IB BIOS
名前 SRQの設定[SET SRQ]
対象 PC-9801-29(K・N)
入力 AH=07h
BH=シリアルポール時に送信するSTBの値
BL=EOI指定
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 08h
分類 GP-IB BIOS
名前 パラレルポールの実行[EXECUTE PARALLEL POLL]
対象 PC-9801-29(K・N)
入力 AH=08h
ES:DI=リスナ情報リストのアドレス
CX=リスナ情報リストのエントリ数
BH=パラレルポール起動指定
BL=PPU 指定
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 09h
分類 GP-IB BIOS
名前 PPRモードの設定[SET PPR MODE]
対象 PC-9801-29(K・N)
入力 AH=09h
BH=PPRモード
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 0Ah
分類 GP-IB BIOS
名前 タイムアウトの設定[SET TIME OUT]
対象 PC-9801-29(K・N)
入力 AH=0Ah
BH=タイムアウト値
00h:タイムアウトチェックを行わない
01〜FFh:タイムアウトチェック時間(秒単位)
出力 AH=リターンコード
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連
INT D1h - Function 0Bh
分類 GP-IB BIOS
名前 STBのチェック[CHECK STB]
対象 PC-9801-29(K・N)
入力 AH=0Bh
出力 AH=リターンコード
DH=現在保持しているSTBの値
DL=現在保持しているEOI指定
DS,SS,SP以外のレジスタは保証されない
解説 o テクニカルデータブックを参照
関連